#!/usr/bin/env python

PACKAGE = 'base_local_planner'

from math import pi

from dynamic_reconfigure.parameter_generator_catkin import ParameterGenerator, double_t, int_t, bool_t, str_t

gen = ParameterGenerator()

# gen.add("inscribed_radius", double_t, 0, "The radius of the inscribed circle of the robot", 1, 0)
# gen.add("circumscribed_radius", double_t, 0, "The radius of the circumscribed circle of the robot", 1, 0)

gen.add("pdist_scale", double_t, 0, "The weight for the path distance part of the cost function", 0.6, 0, 5)
gen.add("gdist_scale", double_t, 0, "The weight for the goal distance part of the cost function", 0.8, 0, 5)
gen.add("occdist_scale", double_t, 0, "The weight for the obstacle distance part of the cost function", 0.01, 0, 5)

gen.add("restore_defaults",  bool_t, 0, "Retore to the default configuration", False)

gen.add("follow_interrupt_dist", double_t, 0, "Set interrupt distance to goal in following mode", 0.15, 0, 1.5)

gen.add("kp", double_t, 0, "Set kp of pid parameter used in LOS logical", 0.8, 0, 100.0)

gen.add("ki", double_t, 0, "Set ki of pid parameter used in LOS logical", 0, 0, 100.0)

gen.add("kd", double_t, 0, "Set kd of pid parameter used in LOS logical", 0, 0, 100.0)

gen.add("obs_detect_dist", double_t, 0, "Distance of obstacle detecting", 2.5, 0, 20.0)

gen.add("ang_for_left", double_t, 0, "Angle difference between left way and mid way", 45.0, 10.0, 90.0)

gen.add("ang_for_right", double_t, 0, "Angle difference between right way and mid way", 45.0, 10.0, 90.0)

gen.add("vis_ang_for_left", double_t, 0, "Visual angle difference between left way and mid way", 10.0, 5.0, 90.0)

gen.add("vis_ang_for_right", double_t, 0, "Visual angle difference between right way and mid way", 10.0, 5.0, 90.0)

gen.add("follow_vel", double_t, 0, "Velocity in state of following", 0.05, 0, 5.0)

exit(gen.generate(PACKAGE, "base_local_planner", "BaseLocalPlanner"))
